package 递归;

import java.io.File;

/*
* 给定一个路径,通过递归遍历该目录下的所有内容，并把所有文件的绝对路径输出在控制台
* */
public class 递归遍历目录 {
    public static void main(String[] args) {
        File srcFile = new File("D:\\zzz");
        /*调用方法*/
        getAllFilePath(srcFile);
    }
    /*
     * 定义一个方法，用于获取给定目录下的所有内容，参数为第一步创建的File对象
     * */
    public static void getAllFilePath(File srcFile){
        /*获取给定的File目录下所有的文件或目录的File数组*/
        File[] filesArray = srcFile.listFiles();
        /*遍历该File数组，得到每一个File对象*/
        if(filesArray!=null){
            for (File file:filesArray) {
                /*判断该File对象是否是目录*/
                if(file.isDirectory()){
                    /*是目录就递归调用*/
                    getAllFilePath(file);
                }else {
                    /*不是目录，就获取绝对路径输出在控制台*/
                    System.out.println(file.getAbsolutePath());
                }
            }
        }
    }
}
